草庐IT

python - 批量重命名目录中的文件

全部标签

ruby - 递归获取目录的大小

是否有一个很好的gem来获取递归计算的目录大小?在unix中,我可以使用du,但我想要一个吸收操作系统差异的库。 最佳答案 这似乎可行:Dir.glob(File.join(dir,'**','*')).map{|f|File.size(f)}.inject(:+) 关于ruby-递归获取目录的大小,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/9354595/

ruby-on-rails - 清理 URL 以防止 Rails 中的 XSS

在Rails应用程序中,用户可以创建事件并发布URL以链接到外部事件站点。如何清理url以防止XSS链接?提前致谢XSS示例,rails的清理方法无法防止@url="javascript:alert('XSS')"">testlink 最佳答案 一旦href已经在标签中,请尝试清理:url="javascript:alert('XSS')"sanitizelink_to('xsslink',url)这给了我:xsslink 关于ruby-on-rails-清理URL以防止Rails中的X

ruby - 如何使用 Ruby gpgme 解密 PGP 加密文件

我找不到有关如何执行此操作的单个示例。我有一个PGP加密的XLS文件和一个PGPkey。这是我返回空字符串的代码:require'rubygems'require'gpgme'defpassfunc(obj,uid_hint,passphrase_info,prev_was_bad,fd)io=IO.for_fd(fd,'w')io.puts"PASSPHRASE"io.flushendencrypted_data=GPGME::Data.new(File.open("file.xls.pgp"))key=GPGME::Data.new(File.open("key.txt"))ctx

sql - 是否可以在 Sequel 中批量更新?

是否可以使用Sequel在一次调用中进行多次更新??例如,在我的服务器上进行大约200次更新可能需要几分钟,但如果我伪造一个SQL查询,它会在几秒钟内运行。我想知道Sequel是否可以用来伪造那个SQL查询,或者更好的是,自己完成整个操作。 最佳答案 我遇到的解决方案涉及update_sql方法。它不是自己执行操作,而是输出原始SQL查询。要批量更新多个更新,只需将它们与;连接起来即可。在此期间,使用结果字符串调用run方法,一切就绪。批处理解决方案比多次更新快得多。 关于sql-是否可

ruby - 确定规范的 gem 文件列表

我一直使用git来确定哪些文件应该进入gem包:gem.files=`gitls-files`.split"\n"不幸的是,thisapproachhasrecentlyprovedtobeinappropriate.我需要一个独立的纯Ruby解决方案。我的第一个想法是简单地将整个目录全局化,但仅此一项就可能包含不需要的文件。所以,在研究了这个问题之后,我想到了这个:#example.gemspecdirectory=File.dirnameFile.expand_path__FILE__dotfiles=%w(.gitignore.rvmrc)ignore_file='.gitign

ruby-on-rails - Nokogiri 和 XPath 中未定义的命名空间前缀

我正在尝试解析YoutubeGdata以查看是否存在具有给定ID的视频。但是没有普通的标签,而是带有命名空间。在链接上http://gdata.youtube.com/feeds/api/videos?q=KgfdlZuVz7I有标签:1有命名空间openSearch:xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'但我不知道如何在Nokogiri和Ruby中处理它。部分代码如下:xmlfeed=Nokogiri::HTML(open("http://gdata.youtube.com/feeds/api/videos

ruby - 使用 rake 复制保留目录结构的文件

我的目标是将一组由模式指定的文件复制到目标目录。源目录中的文件可以有子目录。我试过:cp_r(Dir.glob('**/*.html'),@target_dir):和cp_r(FileList['**/*.html'],@target_dir):但都不起作用。它只在我做类似的事情时有效:cp_r(Dir['.'],@target_dir):但我只需要复制*.html文件而不是其他任何文件。我需要什么cp--parents命令确实对使用现有的Ruby/Rake方法有什么建议吗?更新看起来用Ant更容易做的事情,用Ruby/Rake堆栈是不可能的-可能我需要研究其他东西。我不想编写自定义代

ruby-on-rails - 如何在 Ruby on Rails View 中路由子文件夹?

任何人都可以阐明如何路由子文件夹的.html.erb文件吗?这是这样放置的:view/pages/en/index.html.erb为了路由这个,我在route.rb上做了以下事情match':lang/index',:to=>'pages/en#index'对于链接代码,我在标题上有这个我得到的错误是RoutingErroruninitializedconstantPages路线: 最佳答案 命名空间将在子文件夹中组织您的代码和View:http://guides.rubyonrails.org/routing.html#cont

ruby-on-rails - Rails 中的普通旧 Ruby 对象位置

Railsn00b问题。我正在Rails中创建一个普通的旧Ruby对象。但我不确定应用程序中是否有我应该放置此对象的标准位置。谢谢 最佳答案 有多种选择,但lib目录是最常见的。如果需要初始化代码,最常见的地方是config/initializers。所以你可能有:lib/mystuff.rb和:config/initializers/mystuff.rblib/mystuff.rb包含您的ruby代码。config/initializers/mystuff.rb包含初始化您的东西的代码,在Rails启动时运行config/init

ruby-on-rails - 在 Ruby 中读取大文件最快的方法是什么?

我看过这个问题的答案,但我无法确定哪个答案的执行速度最快。这些是我看到的答案-哪个最好?使用each或each_line一次读一行使用gets一次读取一行使用readlines将其全部保存到一个行数组中,然后使用每个行使用grep(不确定究竟用grep做什么......)使用sed(不确定sed到底能做什么...)还有别的吗?此外,是只使用另一种语言更好还是Ruby更好?编辑:更多细节:每一行都包含类似“id1attr1_1attr2_1id2attr1_2attr2_2...idnattr1_nattr2_n”(n非常大)的内容,我需要将它们插入数据库。对于该示例行,我需要将n行插入